<?php
/**
 * Created by PhpStorm.
 * User: samsung
 * Date: 2018/8/12
 * Time: 16:13
 */

namespace app\index\controller;
use think\Controller;
use think\facade\View;
//静态代理类
//display方法直接输出模板文件渲染后的内容，fetch方法是返回模板文件渲染后的内容
class Demo7 extends Controller
{
    public function  test0(){
        return $this->view->fetch();
    }
    public function test1(){
// 直接将数据不通过模板输出
        $titles = '<p style="color:red">我的主题是爱我中华</p>';
       // return $this->display($titles); //最简单的方式
       // return $this->view->display($titles); //Controller里面的view实例对象
        return View::display($titles);//静态代理模式

    }
//使用视图数据进行输出 fetch()
    public function test2(){

        //模板变量赋值 assign()
        //1.普通变量
        $this->view->assign('titles','zhang hu');
        $this->view->assign('ages',29);
        //批量赋值
        $this->view->assign([
            'sex' => '男',
            'add' => '嵊州西后街',
        ]);

        //2.数组
        $this->view->assign('goods',[
            'id' => 1,
            'type' => '水果',
            'names' => '葡萄',
        ]);

        //3.输出对象
        $odj = new \stdClass(); //反斜杠表示这个类是全局的.
        $odj ->course = '计算机课程';
        $odj ->classnum = 90;
        $this->view->assign('info',$odj);

        //4.常量定义
        define('SITE_NAME','张虎中文网');
        //模板中输出数据
        //模板默认的目录位于当前模块目录下面的view,模板文件位于当前控制器命名的目录中
        return $this->view->fetch();
    }

    public function  test3(){
        $data = \app\index\model\User::all();
        $this->view->assign('data',$data);
        return $this->view->fetch();
    }
    public function test4(){
        //获取分页要调用查询类中的paginate(num);方法
        //每页显示5条
        $data = \app\index\model\User::paginate(5);
        $this->view->assign('data2',$data);
        return $this->view->fetch();
    }
    public function  test5(){
        return $this->view->fetch();
    }
}